<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8" />
		<title>2.姓名案例_methods实现</title>
		<style>
			*{
				margin-top: 10px;
			}
		</style>
		<!-- 引入Vue -->
		<script type="text/javascript" src="../js/vue.js"></script>
	</head>
	<body>
		<!-- 
			姓名案例_methods实现
					1.稍微好一点，因为模板中的代码简单了很多；
					2.但是有效率上的问题，getTheFullName被调用的太频繁了；
					3.getTheFullName会在两个时候调用：
							(1).Vue初次渲染页面时调用。
							(2).当data中任何一个数据发生改变的时候调用（甚至改的都是无关的数据，都会导致getTheFullName被调用）。
					备注：只要data中的数据发生改变，那么Vue不由分说，一定会重新解析模板的。
		 -->
		<!-- 准备好一个容器-->
		<div id="demo">
			<h1>学校名称：{{schoolName}}</h1>
			姓：<input type="text" v-model="firstName"> <br>
			名：<input type="text" v-model="lastName"> <br>
			全名：<span>{{getTheFullName()}}</span> <br> 
			全名：<span>{{getTheFullName()}}</span> <br> 
			全名：<span>{{getTheFullName()}}</span> <br> 
			全名：<span>{{getTheFullName()}}</span> <br> 
		</div>

		<script type="text/javascript">
			//阻止 vue 在启动时生成生产提示。
			Vue.config.productionTip = false
			
			new Vue({
				el:'#demo',
				data:{
					schoolName:'尚硅谷',
					firstName:'张',
					lastName:'三'
				},
				methods:{
					//用于得到全名的方法
					getTheFullName(){
						console.log('getTheFullName方法被调用了！')
						return this.firstName + '-' + this.lastName
					}
				}
			})
		</script>
	</body>
</html>